Method and system for smart data input relay

ABSTRACT

Systems and methods are disclosed to enable delivering a contextually relevant action for an underlying focal point of a communication (an “entity”) between users over computing devices. Delivery of a contextually relevant action entails identifying the entity and associated descriptors or amplifying words in the communication surrounding the entity, reviewing databases of actions taken with respect to the identified entity and associated descriptors, reviewing the functions and features of platforms and applications supported on users&#39; computing devices, computing correlations between the actions taken and entity involved and computing devices&#39; available functions and features, and selecting a contextually relevant action from the computed correlation. The selected contextually relevant action is displayed simply as an executable action for a user to take or as a description of the entity or as a series of possible executable actions to take.

CROSS-REFERENCES TO RELATED APPLICATIONS

This application claims the benefits of U.S. Provisional Application62/100,050, filed Jan. 5, 2015, and titled, “METHOD AND SYSTEM FOR SMARTDATA INPUT RELAY” the disclosures of which are incorporated herein byreference in its entirety and for all purposes.

TECHNICAL FIELD

The subject matter disclosed herein generally relates to identifying akeyword or key context (also referred to as an “entity”) ofcommunications across computing devices and delivering an actionablereference related to the context of identified entities. In someembodiments, users' computing devices are connected to one anotherthrough a knowledge analysis system configured to identify the correctcontext of communications between the users and predict actions theusers will take within that context. In some embodiments, the predictedaction is displayed within the communication between the users.

BACKGROUND OF THE INVENTION

Human communications in the modern digital age are capable of connectingand communicating a deluge of information. The sheer volume ofinformation that may be shared between users of computing devicespresents numerous opportunities for a recipient of such information tointerpret multiple meanings or consider a variety of uses a sender ofthe information may intend. Compounding the sheer volume of informationand multitude of meanings possible within communications that relay suchinformation are the numerous formats such communications may come in,such as email, text messages, social media posts, emails, customerfeedback comments on a vendor website, or information circulated withina closed environment.

It is difficult and time consuming for users to integrate, communicate,or appreciate a particular singular meaning or intended use ofinformation sent over computing devices. This inefficiency is at oddswith the increased expectations users have of their computing devicesand services. Companies and information service providers configure andoperate an ever increasing number of computer systems to increase thenumber of sources of information that have traditionally beenunavailable. A need exists for efficiently and quickly communicating adesired aspect or context for shared information that may have a litanyof meanings or uses.

SUMMARY OF THE INVENTION

Providing a contextually relevant action for a key word or key context(hereafter referred to as an “entity” or “entities”) within acommunication between or among users' computing devices is described.More specifically, some embodiments relate to methods and systems foridentifying and optimizing a desired description of an entity in realtime and relaying contextually relevant information and actions for thatdescription regardless of the platforms involved. Illustrative examplesof entities include, but are not limited to, places, people, products,songs or other media. The contextually relevant information or actionsassociated to entities, or their descriptions, include hyperlinks towebpages, mobile application landing pages, mobile application serviceactions (such as a “navigate to” action of a mapping mobileapplication), purchase options or reference documents. One of skill inthe art can comprehend other entities or means of presentingcontextually relevant information or actions beyond these examples.

Communication between users' computing devices may refer to emails, textmessages, social media posts, or website postings such as comments orreviews sections. One of skill in the art will appreciate multiplecommunications methods applicable to embodiments disclosed herein. Someembodiments are performed on, through, or between computing devices suchas mobile or smartphones, tablet computers, laptop computers, desktopcomputers, automobile dashboard computers, and other similar devices.

Contextually relevant information can provide a richer set ofinformation than simple plain text within a communication. In someembodiments, contextually relevant information further provides a callto action, this is, a contextually relevant action. Merely by way ofexample, in some embodiments, contextually relevant information within acommunication between users' mobile devices is predicted and presentedon a screen of the recipient as an action for the recipient to take; inother words, the contextually relevant action becomes part of thecommunication and enables the recipient to interact with the underlyinginformation directly, rather than perform a separate series of datamanipulations across multiple webpages or platforms to interpret and acton the communicated information received from the sender.

Accurate entity input or interpretation among computing device userstypically involves several manipulations to convey the intended meaningor context or use of the entity. Traditional search engines, such asGoogle® and Ski®, perform information retrieval for a single audienceonly and require a user to sort and select which source of informationis desired for interaction. Further, presentations of search resultsrelated to an intended entity by a conventional search tool aretypically limited to plain text characters. For entities communicated inplain text, users cannot directly interact with the communication, orgenerate subsequent actions or information that may otherwise be enabledby a computing device's software. Conventional information sharingacross computing devices between users thus requires several steps tounderstand the intended context or use of the communicated entity.

In an example of conventional information sharing via text messaging, asender must accurately describe the intended context of an entity viaplain text (such as distinguishing a popular title as a book or movie,or the particular location of a popular chain coffee shop), a recipientmust correctly interpret the description of the sent entity to properlyidentify it, and the recipient must then independently researchinformation regarding the context of the entity.

In the independent research step, a recipient must separately andmanually search for information about a specific entity (such as from awebsite), sort through the search results to find a result the recipientbelieves matches the sender's intent, and then access that information.Similarly, if a sender beforehand desires to provide specificinformation regarding an entity, the sender first manually searches forthe desired information about the entity, copies that information,enters the copied information into a communication platform, and thentransmits.

To illustrate the conventional process: a sender desires to meet arecipient at a coffee shop; the sender can initially text the recipientthe name of the coffee shop. The sender can also look up the address ofthe coffee shop in a separate window, copy it, and then return to thetext window and send the copied address to the recipient. Alternatively,the sender can give a basic description for the location and therecipient can receive the name of the coffee shop in a text window ofthe recipient's computing device, and then turn to a separate window tolook up the specific address or directions to the location. A sendercould open a map application and forward a location reference for thelocation, but the recipient's computing device may not host theparticular mapping application required to access the locationreference.

In this and other conventional communications of entities seeking torelay contextual information about the entity, multiple substeps arerequired. On mobile devices, these steps are particularly tedious asmobile devices small screens typically present only one source ofinformation on the device's screen at a time, even though theinformation is spread across multiple windows or requires multiplescreens to fully interact with. Currently, avoiding miscommunicationabout the true purpose of a transmitted entity is an inefficientprocess. Unintended transaction costs are also possible as the failureto provide accurate information in a timely fashion can lead touninformed decisions with unknown costs later, or foregoing decisionsaltogether. Information technology as employed by disclosed embodimentsalleviate these costs and inefficiencies.

In some embodiments as described herein, a knowledge analysis systempredicts the contextually relevant action surrounding an entity embeddedin a communication between or among users in real time by correlatingsearch results of, among other things, the users' own computing history,the computing history of other users, the mobile applications hosted bythe users' computing devices that are capable of supporting certainactions, and amplifying words surrounding the entity. As described,“users” may refer to either or both the sender or recipient. Theknowledge analysis system thereby determines likely possible actions forusers to take relevant to the entities within the communication,obviating the need for users' to perform independent research to executean intended or desired action. In some embodiments, the contextuallyrelevant action is presented to the users as a plain text character withan underlying hyperlink to a given action, in some embodiments aseparate overlay to the communication includes contextually relevantactions such as a hyperlink to a webpage or opening a mobile applicationto perform the action. In some embodiments, the knowledge analysissystem includes entity information such as the definition and picturesas part of the contextually relevant action.

In some embodiments, a user's past entity historical trends andactivities are analyzed to build a knowledge association. Ascontextually relevant actions are executed, or in some cases rejected infavor of other contextually relevant actions, a knowledge analysissystem records the actions to update historical trends and activitiesrelated to certain entities. In some embodiments, therefore, a sender'sown entity history of interaction and trends are prioritized forpredicting actions to take with certain entities. In some embodimentsthe recipient's entity historical trends and activities are prioritizedfor prediction, and in some embodiments global historical trends andactivities are prioritized. In some embodiments, the sender or recipientcan weight a prioritization; for example, if a sender is asking arecipient for a recommendation of a particular cuisine, the knowledgeanalysis system can weight the contextually relevant actionshistorically implemented by the recipient more (relative to the sender).

Numerous benefits are achieved by way of embodiments of the presentinvention over conventional techniques. For example, in someembodiments, predicting the desired entity's contextually relevantaction allows a sender to convey the intent of a communication, or arecipient to understand the meaning, faster than if the sender/recipientswitched between multiple screens to locate and attach the desiredintent. As an illustrative example, a user sending a text message to arecipient enters the title of a book and the embodiment predicts thedesired action related to that entity, such as an Amazon® link topurchase the book or a book review, and relays this contextuallyrelevant entity information to the recipient. In some embodiments, thetitle of the book is still delivered in plain text, but the recipientmay press the entity in the text message or otherwise select an actionbutton on a screen or keyboard to retrieve the contextually relevantaction of an entity in the communication. The benefits of these andother embodiments reduce time to transmit desired information andenables faster decision making.

Computing functions are also improved by implementing embodiments of theinvention. Network computing cycles are reduced, or eliminatedcompletely, by fewer transmissions between a user and third party, andby fewer separate searches by a user or third party to thecommunication. Fewer network computing cycles reduces the bandwidth andnetwork data a computing device consumes as compared to conventionalmethods, enabling faster performance. Further, computing device power isimproved; a knowledge analysis system leveraged to a user or third partyintention for exchanging information regarding an entity reduces time acomputing device or device operator (a user or third party) isfunctioning, therefore reducing power consumption in addition to reducednetwork footprint.

These and other embodiments of the invention along with many of itsadvantages and features are described in more detail in conjunction withthe text below and attached figures.

BRIEF DESCRIPTION OF THE DRAWINGS

Some embodiments are illustrated by way of example and not limitation inthe figures of the accompanying drawings.

FIG. 1 is a network diagram illustrating an example network environmentsuitable for performing aspects of the present disclosure, according tosome embodiments.

FIG. 2 illustrates a system diagram showing a first user computingdevice connected to a second user computing device operably coupled to aknowledge analysis system, according to some embodiments.

FIG. 3 illustrates a sequence diagram of the interaction between a firstuser computing device, knowledge analysis system, and third party systemfor identifying and sharing contextually relevant actions incommunications, according to some embodiments.

FIG. 4 illustrates an example method of accessing communications betweencomputing device users and delivering contextually relevant actionsrelated to entities within the communications, according to someembodiments.

FIGS. 5A-C illustrate example methods of ancillary actions taken by aknowledge analysis system incident to delivering contextually relevantactions related to entities within a communication among computingdevice users, according to some embodiments.

FIGS. 6A-C illustrate examples of visual templates, as displayed tocomputing device users, of contextually relevant actions related toentities within communications, according to some embodiments.

FIG. 7 illustrates a block diagram illustrating components of a machine,according to some example embodiments, able to read instructions from amachine-readable medium and perform any one or more of the methodologiesdiscussed herein.

DETAILED DESCRIPTION OF THE INVENTION

The following detailed description should be read with reference to thedrawings when appropriate, in which identical reference numbers refer tolike elements throughout the different figures. The drawings, which arenot necessarily to scale, depict selective embodiments and are notintended to limit the scope of the invention. The detailed descriptionillustrates by way of example, not by way of limitation, the principlesof the invention. This description will clearly enable one skilled inthe art to make and use the invention, and describes severalembodiments, adaptations, variations, alternatives and uses of theinvention, including what is presently believed to be the best mode ofcarrying out the invention. As used in this specification and theappended claims, the singular forms “a,” “an,” and “the” include pluralreferents unless the context clearly indicates otherwise.

Examples merely demonstrate possible variations. Unless explicitlystated otherwise, components, and functions are optional and may becombined or subdivided, and operations may vary in sequence or becombined or subdivided or omitted. In the following description, forpurposes of explanation, numerous specific details are set forth toprovide a thorough understanding of example embodiments. It will beevident to one skilled in the art, however, that the present subjectmatter may be practiced without these specific details.

Systems, methods, and apparatuses are described to interpret, analyze,predict, and associate computing device user inputs and deliveractionable information for entities (the focal point of a communicationbetween or among users). Technologies related to embodiments of thepresent invention support relaying the contextually relevant action ofan entity within communications or references without requiring users orthird parties to research that entity through separate informationsources or search engines.

In some embodiments, a knowledge analysis system predicts contextuallyrelevant actions for a particular entity in a communication betweenusers (senders and/or recipients) on computing devices. In someembodiments, the knowledge analysis system is an intermediary betweenthe users' computing devices and accesses the communication betweenthem. In some embodiments, the knowledge analysis system automaticallyidentifies entities within the communication by distinguishing nounswithin the communication. In some embodiments, the knowledge analysissystem automatically identifies entities within the communication bydistinguishing verbs within the communication. In some embodiments, auser can prompt an entity by highlighting the entity within the text orlabeling with an explicit identifier. In other words, as opposed tohashtags or @ symbols seen in social media outlets, identification of anentity, or presentation of the related contextually relevant action, isnot limited to explicit selection by a user.

In some embodiments, the knowledge analysis system performs a series ofsearches to identify at least one relevant action associated with theentity. In some embodiments, searches for relevant actions comprisesearching for metadata such as coding tags or references. In someembodiments, the knowledge analysis system searches the users' computingdevices for applications and programs related to the identified entity;in some embodiments the knowledge analysis graph searches the Internetfor webpages associated with the entity. In some embodiments, a userdetermines the search parameters that a knowledge analysis system willuse to determine eligible relevant actions. For example, a user canchoose mobile applications as the only source of relevant actions, or ahybrid of a sender's mobile applications and a recipient's mobileapplications as the source of relevant actions. One of skill in the artwill appreciate further parameters a user may take to identify at leastone relevant action associated with the entity.

In some embodiments, a database of historical trends and activities isaccessed by the knowledge information system. A database of historicaltrends and activities includes, in some embodiments, a global log ofactions taken that are associated with the identified entity across allaccessible computing devices, such as by locating a metatag of theidentified entity within a code sequence for the action of the globallog. A database of historical trends and activities includes, in someembodiments, a user centric log of actions taken with the identifiedentity, such as by locating a metatag of the identified entity within acode sequence for the action on the user's computing device (either thesender or recipient of the communication). In some embodiments, thehistorical trends and activities accessed by the knowledge analysissystem is limited to identified relevant actions within parameters setby a user. For example, if a user sets a parameter of relevant actionsidentified by a knowledge analysis system as those only capable of beingperformed on a mobile application, the knowledge analysis system in turnwill only access those parts of a database of historical trends andactivities that relate to the entity in a mobile application context.

In some embodiments, the knowledge analysis system identifies amplifyingwords within the communication. Amplifying words can vary by embodiment,and include but are not limited to articles, adjectives and adverbswithin the communication that are otherwise self defining or limited toa single context and therefore require no further contextually relevantinformation or action to accurately describe. Merely as an example of anamplifying word, in some embodiments, time is an identified amplifyingword.

In some embodiments, a correlation is computed among a search forrelevant actions, the frequency of an action as recorded within adatabase of historical trends and activities, and the amplifying word orwords. For illustrative purposes, in some embodiments the knowledgeanalysis system identifies the entity “Starbucks®” and the amplifyingword “review” in an example communication between users. The knowledgeanalysis system initiates a search across the Internet and locatescorporate sponsored webpages, venues serving coffee, job applicationportals, and the like. The knowledge analysis system further searchesthe users' computing devices and locates a Yelp® mobile application, amobile purchasing application, and similar customer service mobileapplications. The knowledge analysis system additionally searches adatabase of historical trends and activities of all users of theknowledge analysis system to determine the actions most frequently takenwith the Starbucks® entity or “review” amplifying word. The knowledgeanalysis system also searches a particular user's historical trends andactivities with either the Starbucks® entity or “review” amplifyingword.

Merely for illustrative purposes related to the foregoing example, theknowledge analysis system can detect that for the given inputs(Starbucks® and “review”), globally the most common action taken is toreview purchase orders of Starbucks® products, while the particularuser's most common action is to write a customer service review for anentity in the same communication with the word “review” in it, and thatthe user has a customer review mobile application such as Yelp® and afood purchasing mobile application such as Order Ahead®. The knowledgeanalysis system can then compute a correlation between these factors,for example the number of times the user chooses the same action as theglobal trend or the number of times the user executes a mobileapplication to perform an action as opposed to a website portal, anddetermine an hierarchy of contextually relevant actions the user cantake based on a ranking of computed correlations. After determining thehierarchy of actions, the knowledge information system can select atleast one contextually relevant action, such as the contextuallyrelevant action with the highest computed correlation, and deliver thecontextually relevant action as part of the communication.

In some embodiments, such determination processes occur concurrently orin real time with a first user delivering a communication to at leastone second user. In other embodiments, the determination occurs afterdelivery of the communication, so that the process only begins if thecommunication sender or recipient requests contextually relevant actionsfor entities within the communication.

In some embodiments, the knowledge analysis system processes anacknowledgment by the user with respect to the selected contextuallyrelevant action. In some embodiments, this acknowledgment is aconfirmation from the first user that the selected contextually relevantaction is the desired action the first user intends to relay to at leastone second user. In some embodiments, this first user confirmation isrecorded for future knowledge analysis prediction. In some embodiments,the acknowledgment is a recordation of the action taken by the at leastone second user. In some embodiments, the acknowledgment is a requestfrom at least one second user for a security credential or anapplication program interface (API) key to execute a particularcontextually relevant action. In some embodiments, the knowledgeanalysis system retrieves the requested acknowledgment (such as asecurity credential or API key, or even the download instructions for aparticular mobile application) and delivers it to the user.

In some embodiments, an affirmative interaction or dismissal in favor ofanother contextually relevant action updates respective databases ofhistorical trends and activities and in turn influences futurecorrelation computations in prediction processes by the knowledgeanalysis system. In some embodiments, the executed action promptssubsequent actions by the knowledge information system. For example, foran executed contextually relevant action to purchase movie tickets for aparticular showing, the knowledge information graph can determine theuser's location and distance to the movie theater the tickets correspondto, and access mapping applications on the user's computing device suchas Waze® to prompt the user with directions, traffic updates anddeparture time suggestions for reaching the theater on time.

In some embodiments, the delivery of the contextually relevant actionincludes all possible contextually relevant actions in descending orderof correlation, such as in a drop down menu or in a window pane or tileoverlaying the communication. In some embodiments, only the contextuallyrelevant action (such as a mobile application action button) with thehighest computed correlation is presented to reduce the screen spacerequired to present the contextually relevant action. In someembodiments, a user can select a different contextually relevant actionthan the one presented by swiping or pressing a “next” or “close button”on a presented contextually relevant action.

In some embodiments, the communication is visual such as a text message,email, or document. In some embodiments, the visual contextuallyrelevant action is operably coupled with communication. In someembodiments, operably coupling is by connecting the entity with thecontextually relevant action through direct visual display such as atile or window pane with the contextually relevant action within. Insome embodiments, operably coupling is by connecting the entity with thecontextually relevant action through a recall function, such that thecontextually relevant action only displays if recalled or requested by auser.

In some embodiments, the communication is aural such as a speech orvoice message. In some aural embodiments, the knowledge analysis systemdelivers a visual cue of entities within the aural communication and atleast one contextually relevant action related thereto. For example, arecipient may listen to a sender's voice message of “meet me on campus”and the knowledge analysis system identifies the entity “campus” as theschool the user attends, the amplifying words “meet” and “me” andproduces search results for locations on the school the two users havechecked into before on mobile applications such as Foursquare® anddelivers a visual tile or information card or text message withinformation on the location to the recipient before, during, or afterthe recipient has listened to the voice message.

In some embodiments, the knowledge analysis system detects a globallypopular contextually relevant action that is not supported on the user'scomputing device, for example the user's computing device does not hosta mobile application that is commonly used for interacting with theparticular entity as correlated with the amplifying words. In someembodiments, the user can request an application program interface (API)key to access the contextually relevant action from the knowledgeanalysis system. In some embodiments, the knowledge analysis systemdelivers the API to the user with delivery of the contextually relevantaction, in some embodiments such API delivery is only delivered uponrequest.

In some embodiments, the knowledge analysis system further deliverscredential information. In some embodiments, credential informationincludes a verification of the sender, such as a security measure thatthe listed sender is in fact the intended sender of the communicationwith the contextually relevant action. In some embodiments, credentialinformation includes the number of times a contextually relevant actionhas been executed by other recipients of communications from a sender asa proxy for the trustworthiness of particular sender (for example if acommunication is between a sender and recipient that the knowledgeanalysis system determines have never exchanged communications).

Turning now to the figures, FIG. 1 illustrates a network relationship100 for delivering contextually relevant actions related to entitieswithin communication among users' computing devices operably coupled toa network-based knowledge analysis system. Network relationship 100includes user 132 operating computing device 130, user 152 operatingcomputing device 150, and network based system 105 such as a knowledgeanalysis system. User 132 or user 152 may be one of a sender orrecipient of communications and user 132 or user 152 as depicted mayrepresent one or more respective sender or recipient operating one ormore computing device 130 and computing device 150. Computing device 130or computing device 150 may be a mobile device, desktop computer, laptopcomputer, tablet computer, or other computing device configured tooperate any one of the functionalities described herein. Connecting user132 or user 152 to network based system 105 through computing device 130or computing device 150 is network 190. Network 190 may be a wirelessnetwork (such as wide area network, local area network), ethernetconnections or other wired connection, or other suitable network systemfor linking computing devices.

Network based system 105 can include a server machine 110 configured toperform contextually relevant action prediction and delivery accordingto some embodiments as further described in this detailed description,and a database 115. Database 115 may store a collection of recordedactions taken with respect to contextually relevant actions, oravailable functionalities a computing device 130 or computing device 150may perform. In some embodiments, database 115 includes actions on aglobal scale; in some embodiments, database 115 includes actions onsmaller scales of select users.

Server machine 110 may access database 115 to determine global oruser-centric histories and trends to more accurately predict how a givenuser 132 or user 152 may intend to relay information about an entitywithin a communication. For example, if a contextually relevant actionfor purchasing movie tickets through a movie ticket purchasing mobileapplication is the most common action taken with respect to the entity“Star Wars®” the server machine 110 can incorporate that most commonaction in computing a correlation for predicting how any one particularuser 132 or user 152 may intend to interact with the entity “Star Wars®”in a communication between the two users.

In some embodiments, user 132 or user 152 is a sender of a communicationor recipient of a communication directly between user 132 and user 152,such as a text message or email between the two. In some embodiments,user 132 or user 152 indirectly communicate, such as user 132 uploads adocument to the Internet with entities embedded and user 152 reads thedocument and requests additional information or actions for the entitieswithin the document; in this situation, the communication can be said tobe passive between user 132 and user 152.

In some embodiments, network based system 105 identifies entities withincommunications between users 132 and 152, searches for eligible relevantactions that may be taken with respect to entities within thecommunications, accesses database 115 to determine histories and trendsof actions taken with respect to the entities or relevant actions,identifies amplifying words that indicate how a particular entityintends to be acted upon, and computes a correlation among these factorsto predict a contextually relevant action to deliver in connection withthe communication.

FIG. 2 further illustrates a system relationship among a first usercomputing device 210 (which may be computing device 130 or computingdevice 150 as depicted in FIG. 1), second user computing device 240(which may be computing device 130 or computing device 150 as depictedin FIG. 1), knowledge analysis system 230 (which may be network-basedsystem 105 as depicted in FIG. 1), all connected through network 190(which may be network 190 as depicted in FIG. 1).

In some embodiments, first user computing device 210 receives acommunication prompt in first user interface 212. In some embodiments,first user interface 212 is a data entry field for receiving text, insome embodiments is a voice recognition system (for instance collectingthe speech of a user through a phone call or voice message or speechrecording), in some embodiments is a photo recognition system. In someembodiments, first user interface 212 is a custom keyboard operated bythe present assignee, though other custom keyboards are of coursepossible. In some embodiments, the custom keyboard includes action keysconfigured to prompt presentation of, and scrolling through,contextually relevant actions of entities within a selectedcommunication. First user computing device 210 also includes dataprocessor 214, a memory 216, and input/output (I/O) module 218 tofacilitate functioning on the device and communication outside thedevice through network 190 and implementation of instructions to executeany of the functionalities described herein.

In some embodiments, concurrent with input of a prompt into first userinterface 212, knowledge analysis system 230 interprets the input andpredicts a contextually relevant action. In some embodiments, thisconcurrent prediction can provide an automatic completion to the inputin first user interface 212. In some embodiments, knowledge analysissystem 230 begins to predict a contextually relevant action followingentry into interface 212.

In some embodiments, knowledge analysis system 230 receives input tofirst user interface 212 from I/O module 218 of first user computingdevice 210 and through network 190 and input module 232. The inputmodule identifies entities and amplifying words within the communicationinput to first user interface 212.

In some embodiments, search module 234 identifies entities within thecommunication (such as by distinguishing nouns or verbs within thecommunication) performs a series of searches related to the identifiedentities to identify relevant actions to take with respect to theentity. In some embodiments, search module 234 searches first usercomputing device 210 or second user computing device 240 to determinethe mobile applications or programs hosted and supported by therespective computing devices. In some embodiments, search module 234searches the Internet for content related to the entity, such as byidentifying metadata identifiers with the entity name. In someembodiments, search module 234 searches database 115 (as described inFIG. 1) for historical trends and activities for entities or relevantactions. In some embodiments, a user can set parameters on search module234 to only search for relevant actions from certain sources or withparticular metrics (such as relevant actions taken within a certaingeographic region or within a specified time frame). In someembodiments, search module 234 delivers its collective results toprediction module 236.

In some embodiments, prediction module 236 analyzes the sourcedinformation from search module 234 to compute a correlation among thefactors. In some embodiments, the prediction module computes thecorrelation as a function of what the historical trends and activitiesfrom database 115 identified as the most common actions taken withrespect to the identified relevant actions and available mobileapplications and platforms of the users' computing devices. In someembodiments, prediction module 236 selects the most popular relevantaction from the global historical trends and activities as determinedfrom database 115. In some embodiments, database 115 includes a user'sown historical trends and activities. For example, in some embodimentsprediction module 236 sources historical trends and activities from thesecond user only and ignores global historical trends and activitiesassociated with the entity. In some embodiments, prediction module 236incorporates identified amplifying words to further refine thecorrelation as taken from a database of historical trends andactivities.

To illustrate, a first or second user may set a parameter of relevantactions to be limited to Internet webpages, and a communication mayinclude “leap day” as an entity and “next” as the amplifying word.Search module 234 can retrieve a variety of webpage links listing thefrequency and occurrence and descriptions of Leap Day, and identifywhich Internet browsing tools are available on the respective computingdevices, collectively these are combined—the link to the webpage througha particular browsing tool—to create a pool of relevant actions for thatentity. The prediction module 236 then accesses historical trends andactivities to determine most common actions taken among the possiblerelevant actions, and incorporates the amplifying words to compute acorrelation among all factors for the most likely action a user is goingto take among the relevant actions given the amplifying words andhistorical trends and activities (in other words, a contextuallyrelevant action).

In some embodiments, computed correlations are ranked into an hierarchyof contextually relevant actions. In some embodiments, prediction module236 selects at least one contextually relevant action, such as the onewith the highest correlation score of the hierarchy of contextuallyrelevant actions, and delivers it as part of the communication betweenfirst user computing device 210 and second user computing device 240.

In some embodiments, the delivery is received through I/O module 248 onsecond user computing device 240 as a visual cue to the contextuallyrelevant action within the communication, such as a pop-up or tile oroverlay within the screen displaying the communication. In someembodiments, the delivery is embedded in the communication but is notseen or otherwise presented until a user requests presentation, such asthrough a keyboard stroke or prompt action on the screen. In someembodiments, plain text of the communication as entered into first userinterface 212 is automatically replaced with the contextually relevantaction selected by knowledge analysis system 230. In some embodiments,the first user is presented with the option to replace the plain textwith at least one contextually relevant action, such as by selectingfrom a drop down menu or menu bar. In some embodiments, selection of aparticular contextually relevant action occurs by tapping thecontextually relevant action in the screen.

In some embodiments, only a single contextually relevant action isdelivered. In some embodiments, a user adjusts the number ofcontextually relevant actions to choose from (e.g. the top five computedcorrelations) or in some embodiments designates certain contextuallyrelevant actions to always or never deliver. In some embodiments,delivery occurs only after a first user has specifically confirmed aparticular contextually relevant action, thus permitting a user topreview the contextually relevant action before relaying within thecommunication. One of skill in the art will recognize other userpreferences that can adjust how many and in what manner contextuallyrelevant actions are presented.

For illustrative purposes only, in one embodiment of delivery ofcontextually relevant actions within text message exchanges, an inputfor the entity “Guardians of the Galaxy” is entered into first userinterface 212 and analyzed by knowledge analysis system 230. Searchmodule 234 searches various sources, such as the Internet and the users'devices, global historical trends and activities related to “Guardiansof the Galaxy” within a database 115 to source relevant actions andreturns movie reviews and local show times and ticket prices. Predictionmodule 236 then selects the most likely contextually relevant action bydetermining what the particular user most commonly selects, what theglobal pool of users most commonly selects, how frequently a user andglobal pool choose the same action, and delivers the determinedcontextually relevant action via network 190. A data processor 238 andmemory 239 facilitate functioning of system 230 through implementationof instructions to execute any of the functionalities described herein.

In some embodiments, the contextually relevant action is received on thesecond user computing device 240 in second user interface 242. In someembodiments, second user interface 242 is a text message window; in someembodiments second user interface 242 is a mobile application landingpage; in some embodiments, second user interface 242 is a webpageportal. One of skill in the art can apply other various secondinterfaces. A second user can then access and interact and completesubsequent actions directly with the contextually relevant actionassociated to the entity from the second user interface 242. In anillustrative example of receiving show times for “Guardians of theGalaxy,” the second user can purchase tickets directly by selecting thea contextually relevant action for the entity in a movie ticket purchasemobile application rather than indirectly purchase tickets by search forticket purchase options on other platforms or screens.

Second user computing device 240 includes a data processor 244 (alsoreferred to as a processor), a memory 246, and an I/O module 148 tofacilitate functioning of second user computing device 240 throughimplementation of instructions to execute any of the functionalitiesdescribed herein.

Some embodiments do not require both a sender and a recipient. Forexample, in some embodiments an author of a document links contextuallyrelevant action for an entity within the content of the document. Insuch an embodiment, as an author writes the document a knowledgeanalysis system recognizes an entity and predicts the desiredinformation the author wishes to convey. In such an embodiment, a seconduser is not an active part of the communication. The desiredcontextually relevant action the author wishes to convey could be a linkto a disclosure statement on file with the Securities and ExchangeCommission's online filing system (such as the Electronic DataGathering, Analysis, and Retrieval system—EDGAR) in an example of adocument discussing the business profile of a publicly traded company.In another example, the desired information is a particular LinkedIn®profile in examples of the author writing an employment guideline orhiring protocol document. One of skill in the art can apply variouscontextually relevant actions desired by an author with a general seconduser audience in mind or even no audience intended. For example of someembodiments of the invention, the contextually relevant action linked tothe entity is for the author's own use and reference, thereby reducingthe need for reference files (electronic or otherwise) stored in aseparate location. Or stated differently, the first user and the seconduser can be the same.

FIG. 3 illustrates a sequence of interactions between users and aknowledge analysis system. As depicted in FIG. 3, in some embodiments,at 320 a first user computing device 310 shares a communicationcomprising an entity with a knowledge analysis system 312. At 322, theknowledge analysis system accesses a third party system 314, such as theInternet or a second user computer device, to determine eligiblerelevant actions as a function of the entity within the communicationand supportable actions among the involved computing devices. In someembodiments, at 324, the knowledge analysis system 312 searches thefirst user computing device 310 for supportable actions such as bydetermining the mobile applications on first user computing device 310.

Once the knowledge analysis system 312 selects a contextually relevantaction, as more fully described throughout this disclosure, in someembodiments at 326 the knowledge analysis system 312 requestsconfirmation via first user computing device 310 that a selectedcontextually relevant action is the desired contextually relevant actiona user intends to relay within the communication. In some embodiments,at 328 the knowledge analysis system receives confirmation and at 330delivers the contextually relevant action to a third party system. Insome embodiments, delivery at 330 is conducted without confirmation fromfirst user computing device 310. In some embodiments, a third partysystem is a second user computing device, such as second user computingdevice 240 as described in FIG. 2. In some embodiments, a third partysystem is database 115 as described in FIG. 1 or FIG. 2 to add to theknowledge analysis prediction functionality.

In some embodiments, at 332 an acknowledgment from third party system314 is processed. In some embodiments, acknowledgment at 332 is aconfirmation that the contextually relevant action was received and theaction was executed. In some embodiments, acknowledgment at 332 is arequest from third party system 314 for additional information, such asa security credential, or API key, or download request for a particularmobile application.

In some embodiments, at 334, the knowledge analysis system 312 deliversa subsequent action to either a first user computing device 310 or thirdparty system 314. In some embodiments, the subsequent action is a linkto a download portal for a particular mobile application, or a securitycredential, or an API key. In some embodiments, the subsequent action isa reminder to perform an action related to an earlier executedcontextually relevant action, such as an alarm and driving directions toa theater for earlier purchased movie tickets.

It should be appreciated that the specific sequence illustrated in FIG.3 provides a particular sequence of interaction between a first usercomputing device 310 and a knowledge analysis system 312 and a thirdparty system 314. Other sequences of steps may also be performedaccording to the embodiment. For example, some embodiments may performthe steps outlined above in a different order. Moreover, the individualsteps illustrated in FIG. 3 may include multiple sub-sequences asappropriate to the individual step. Furthermore, additional steps may beadded or removed depending on the particular applications. As mentionedfor some embodiments, the knowledge analysis system 312 beginspredicting the contextually relevant action concurrent, or in real time,with the entry into a first user computing device 310. In someembodiments, the sequences of FIG. 3 instead begin subsequent to entryof an entity to a first user computing device 310. One of skill in theart would recognize many variations, modifications, and alternatives.

FIG. 4 illustrates a flowchart of method 400 for relaying a contextuallyrelevant action associated with entities in communications betweencomputing device users. Method 400 is initiated at 410 by accessing acommunication between a first user and a second user. In someembodiments, the users are natural persons but in some embodiments usersare automated systems. For an example of an embodiment of the inventionemploying an automated system, an alarm may initiate a communicationwith other users.

In some embodiments, at 420 at least one entity is identified within thecommunication. At 430, at least one contextually relevant action ispredicted; the contextually relevant action predicted is a function ofassociation with the identified entity within the communication.

In some embodiments, step 430 includes additional substeps. At 431, asearch across various information sources, such as the Internet andvarious computing devices is conducted to identify a pool of possiblerelevant actions to take that involve the identified entity. In someembodiments identification of relevant actions is by matching themetadata of certain functionalities of information on the Internet orcomputing devices and their programs with that of the identified entity.In some embodiments, a user may adjust which sources of information areaccessed to identity relevant actions, such as be limiting to only theInternet or only certain devices.

In some embodiments, at 432, a database of historical trends andactivities is accessed. The database in some embodiments includes allactivities taken with regard to a given entity or relevant action acrossall users. In some embodiments, the database includes only thehistorical trends and activities of certain users.

In some embodiments, at 433 amplifying words within the communicationare identified. At 434, a correlation among the identified relevantactions, historical trends and activities, and amplifying words iscomputed. By computing a correlation, an hierarchy of contextuallyrelevant actions can be constructed or determined at 435 from the poolof eligible identified relevant actions. In some embodiments, theamplifying words prioritize certain identified relevant actions. In someembodiments, the historical trends and activities prioritize certainidentified relevant actions.

In some embodiments, at 436 at least one contextually relevant actionfrom the hierarchy of contextually relevant actions is selected. In someembodiments, the contextually relevant action with the highestcorrelation score among the hierarchy of contextually relevant actionsis selected. In some embodiments, a designated number of contextuallyrelevant actions from the hierarchy are selected.

In some embodiments, at 440, the selected contextually relevant actionis delivered to at least the second user. In some embodiments, theselected contextually relevant action is also delivered to the firstuser.

For illustrative purposes of the effect of method 400, rather than auser looking up local movie times for a particular movie and ticketprices and theaters showing the movie and transcribing all of this datainto a communication to another user, the user simply enters the titleof the movie and a knowledge analysis system determines a show time andticket price at a local theater and selects a contextually relevantaction to purchase tickets at a particular location and time for theparticular movie. The contextually relevant action could be a link to awebpage or to a mobile application for purchasing the tickets. A userthat receives the contextually relevant action can interact directly,avoiding multiple messages between the users to determine the intentsurrounding the entity (the movie) and avoiding having to engagemultiple search options and screens and platforms to determine mutuallyagreed upon information.

It should be appreciated that the specific steps illustrated in FIG. 4provide a particular method of relaying contextually relevant actionsaccording to some embodiments. Other sequences of steps may also beperformed according to the embodiment. For example, some embodiments mayperform the steps outlined above in a different order. Moreover, theindividual steps illustrated in FIG. 4 may include multiple sub-stepsthat may be performed in various sequences as appropriate to theindividual step. Furthermore, additional steps may be added or removeddepending on the particular applications. One of skill in the art wouldrecognize many variations, modifications, and alternatives.

FIGS. 5A-C depict alternate steps and actions that may be taken inaddition to method 400 as described above. FIG. 5A depicts method 500wherein step 510 coincides with step 440 of method 400. Subsequent tostep 500 of delivering the selected contextually relevant action to asecond user, at 512 the selected contextually relevant action isoperably coupled to the communication. In some embodiments, operablycoupling at 512 is inserting a visual cue, such as a popup window ortile above the entity in the communication such that pressing orselecting the visual cue initiates the action of the contextuallyrelevant action. Other methods of operably coupling the selectedcontextually relevant action for visual communication is furtherdescribed in conjunction with FIGS. 6A-C.

FIG. 5B depicts method 501, wherein step 520 is a derivative of step 410of method 400. Step 520 begins by accessing an audio or auralcommunication between users. In some embodiments, method 501 includesmethod 400 between steps 520 and 522. In some embodiments, at 522 avisual cue is delivered to the second user presenting a selectedcontextually relevant action as a visual cue in similar fashion as step512 described above. For example, in some embodiments the audiocommunication accessed at 520 is a voice message between a first andsecond user; method 400 selects a contextually relevant action and at522 a visual cue is delivered for the contextually relevant action tothe second user, despite no underlying visual communication to attach orembed or operably couple the visual cue to. In some embodiments, thevisual cue delivered at 522 is a popup window or tile, in someembodiments, the visual cue is delivered in a text message or email.

FIG. 5C depicts method 502, wherein step 530 coincides with step 440 ofmethod 400. After delivering a selected contextually relevant action at530, the action taken with respect to the delivered contextuallyrelevant action is recorded at 532. In some embodiments, the recordedaction is affirmative execution of the action delivered; in someembodiments the action taken is a rejection of the action delivered,indicating the need to select a new or different contextually relevantaction. In some embodiments, recording the action taken updatesdatabases, such as database 115 as described in FIG. 1 or FIG. 2, withthe action taken to influence future predictions, correlationcomputations, and selections of contextually relevant actions. In someembodiments, at 534 a secondary action is delivered. In someembodiments, delivery of the secondary action at 534 is subsequent torecording an action at 532, in some embodiments delivery of thesecondary action at 534 occurs without recording at 532 as a precursorstep. In some embodiments, delivering a secondary action at 534comprises sending a reminder of a previous contextually relevant action(for example, time to depart for a movie a user purchased tickets for),or delivering a security credential, recommendation for a mobileapplication supporting a selected contextually relevant action, or APIkey.

FIGS. 6A-C illustrate sample visual displays of contextually relevantactions delivered with communications between users' computing devices.

FIG. 6A depicts visual display 610 of contextually relevant actionwithin a text message between a user and a recipient. Visual display 610displays the contextually relevant action as a window above theidentified entity. In some embodiments, the identified entity ishighlighted or underlined; a user (sender or recipient) then presses orclicks the highlighted or underlined area to display the contextuallyrelevant action which may be presented as a tile or popup window ornavigate to a separate landing page with a list of other high computedcorrelation contextually relevant actions determined by a knowledgeanalysis system. In some embodiments, pressing or clicking thehighlighted or underlined entity or contextually relevant action directsthe user directly to applications or webpages associated with the entityfor further interaction.

In some embodiments, the contextually relevant action includes a name ofthe entity and a link to a description of the entity in a third partyplatform (such as one operated by the present assignee). In someembodiments, and as depicted in FIG. 6B for an email platformcommunication, the contextually relevant action includes additionalinformation such as the address of an entity, customer rating, and alink to execute a particular action such as driving directions based onthe computed correlation of the knowledge analysis system on the mostlikely action a user is going to take with respect to a given entity.

FIG. 6C depicts visual display 630 of options may engage with forengaging a contextually relevant action. In some embodiments, as shownin display 630, a user chooses to view the link provided in a window orchooses not to follow the link, and no other information regarding theentity or actions to be taken are presented.

In some embodiments, not depicted, visual displays may show contextuallyrelevant action for an entity without a specific recipient. For example,a news release for a car manufacturer includes the entity of Elon Muskwith a link to further contextually relevant action about him. In theseembodiments, the author of the news release has a general audience forsharing the contextually relevant action. In some embodiments, theentity within the communication (which may include a document with noimmediate direct recipient or audience) has not been preselected withcontextually relevant action by the user or author. In such anembodiment, the interface of the recipient or reader detects thepresence of an entity and a knowledge analysis system performs theinterpretation, analysis, prediction, and presentation of contextuallyrelevant action despite no such interpretation, analysis, prediction,and presentation occurring by the user/author that initially relayed thecommunication with the entity.

Other embodiments present alternative options for viewing. According tosome embodiments previously discussed, visual displays 610, 620, or 630may include at least one link displayed in a menu bar or drop down menuwithin the same screen or pane or tile as the contextually relevantaction, and such menus present alternative contextually relevant actionsa user may initiate.

Referring to FIG. 7, the block diagram illustrates components of amachine 700, according to some example embodiments, able to readinstructions 724 from a machine-readable medium 722 (e.g., anon-transitory machine-readable medium, a machine-readable storagemedium, a computer-readable storage medium, or any suitable combinationthereof) and perform any one or more of the methodologies discussedherein, in whole or in part. Specifically, FIG. 7 shows the machine 700in the example form of a computer system (e.g., a computer) within whichthe instructions 724 (e.g., software, a program, an application, anapplet, an app, or other executable code) for causing the machine 700 toperform any one or more of the methodologies discussed herein may beexecuted, in whole or in part.

In alternative embodiments, the machine 700 operates as a standalonedevice or may be connected (e.g., networked) to other machines. In anetworked deployment, the machine 700 may operate in the capacity of aserver machine 110 as depicted in FIG. 1 or a client machine in aserver-client network environment, or as a peer machine in a distributed(e.g., peer-to-peer) network environment. The machine 700 may includehardware, software, or combinations thereof, and may, as example, be aserver computer, a client computer, a personal computer (PC), a tabletcomputer, a laptop computer, a netbook, a cellular telephone, asmartphone, a set-top box (STB), a personal digital assistant (PDA), aweb appliance, a network router, a network switch, a network bridge, orany machine capable of executing the instructions 724, sequentially orotherwise, that specify actions to be taken by that machine. Further,while only a single machine 700 is illustrated, the term “machine” shallalso be taken to include any collection of machines that individually orjointly execute the instructions 724 to perform all or part of any oneor more of the methodologies discussed herein.

The machine 700 includes a processor 702 (e.g., a central processingunit (CPU), a graphics processing unit (GPU), a digital signal processor(DSP), an application specific integrated circuit (ASIC), aradio-frequency integrated circuit (RFIC), or any suitable combinationthereof), a main memory 704, and a static memory 706, which areconfigured to communicate with each other via a bus 708. The processor702 may contain microcircuits that are configurable, temporarily orpermanently, by some or all of the instructions 724 such that theprocessor 702 is configurable to perform any one or more of themethodologies described herein, in whole or in part. For example, a setof one or more microcircuits of the processor 702 may be configurable toexecute one or more modules (e.g., software modules) described herein.

The machine 700 may further include an input and output module 710(e.g., a plasma display panel (PDP), a light emitting diode (LED)display, a liquid crystal display (LCD), a projector, a cathode ray tube(CRT), or any other display capable of displaying graphics or video)configured to display any one of the interfaces described herein. Themachine 700 may also include an input device 712 (e.g., a keyboard orkeypad), a cursor control device 714 (e.g., a mouse, a touchpad, atrackball, a joystick, a motion sensor, an eye tracking device, or otherpointing instrument), a storage unit 716, a signal generation device 718(e.g., a sound card, an amplifier, a speaker, a headphone jack, or anysuitable combination thereof), and a network interface device 720.

The storage unit 716 includes the machine-readable medium 722 (e.g., atangible and non-transitory machine-readable storage medium) on whichare stored the instructions 724 embodying any one or more of themethodologies, functions, or interfaces described herein, including, forexample, any of the descriptions of FIGS. 1-6. The instructions 724 mayalso reside, completely or at least partially, within the main memory704, within the processor 702 (e.g., within the processor's cachememory), or both, before or during execution thereof by the machine 700.The instructions 724 may also reside in the static memory 706.

Accordingly, the main memory 704 and the processor 702 may be consideredmachine-readable media 722 (e.g., tangible and non-transitorymachine-readable media). The instructions 724 may be transmitted orreceived over a network 726 via the network interface device 720. Forexample, the network interface device 720 may communicate theinstructions 724 using any one or more transfer protocols (e.g., HTTP).The machine 700 may also represent example means for performing any ofthe functions described herein, including the processes described inFIGS. 1-6.

In some example embodiments, the machine 700 may be a portable computingdevice, such as a smart phone or tablet computer, and have one or moreadditional input components (e.g., sensors or gauges) (not shown).Examples of such input components include an image input component(e.g., one or more cameras), an audio input component (e.g., amicrophone), a location input component (e.g., a GPS receiver), anorientation component (e.g., a gyroscope), a motion detection component(e.g., one or more accelerometers), and an altitude detection component(e.g., an altimeter). Inputs harvested by any one or more of these inputcomponents may be accessible and available for use by any of the modulesdescribed herein.

As used herein, the term “memory” refers to a machine-readable medium722 able to store data temporarily or permanently and may be taken toinclude, but not be limited to, random-access memory (RAM), read-onlymemory (ROM), buffer memory, flash memory, and cache memory. While themachine-readable medium 722 is shown in an example embodiment to be asingle medium, the term “machine-readable medium” should be taken toinclude a single medium or multiple media (e.g., a centralized ordistributed database 115 as depicted in FIG. 1 or FIG. 2, or associatedcaches and servers) able to store instructions 724. The term“machine-readable medium” shall also be taken to include any medium, orcombination of multiple media, that is capable of storing theinstructions 724 for execution by the machine 700, such that theinstructions 724, when executed by one or more processors of the machine700 (e.g., processor 702), cause the machine 700 to perform any one ormore of the methodologies described herein, in whole or in part.Accordingly, a “machine-readable medium” refers to a single storageapparatus or device 130 or 150, as well as cloud-based storage systemsor storage networks that include multiple storage apparatus or devices130 or 150. The term “machine-readable medium” shall accordingly betaken to include, but not be limited to, one or more tangible (e.g.,non-transitory) data repositories in the form of a solid-state memory,an optical medium, a magnetic medium, or any suitable combinationthereof.

Furthermore, the machine-readable medium 722 is non-transitory in thatit does not embody a propagating signal. However, labeling the tangiblemachine-readable medium 722 as “non-transitory” should not be construedto mean that the medium is incapable of movement; the medium should beconsidered as being transportable from one physical location to another.Additionally, since the machine-readable medium 722 is tangible, themedium may be considered to be a machine-readable device.

Throughout this specification, plural instances may implementcomponents, operations, or structures described as a single instance.Although individual operations of one or more methods are illustratedand described as separate operations, one or more of the individualoperations may be performed concurrently, and nothing requires that theoperations be performed in the order illustrated. Structures andfunctionality presented as separate components in example configurationsmay be implemented as a combined structure or component. Similarly,structures and functionality presented as a single component may beimplemented as separate components. These and other variations,modifications, additions, and improvements fall within the scope of thesubject matter herein.

Certain embodiments are described herein as including logic or a numberof components, modules, or mechanisms. Modules may constitute softwaremodules (e.g., code stored or otherwise embodied on a machine-readablemedium 722 or in a transmission medium), hardware modules, or anysuitable combination thereof. A “hardware module” is a tangible (e.g.,non-transitory) unit capable of performing certain operations and may beconfigured or arranged in a certain physical manner. In various exampleembodiments, one or more computer systems (e.g., a standalone computersystem, a client computer system, or a server computer system) or one ormore hardware modules of a computer system (e.g., a processor 702 or agroup of processors 702) may be configured by software (e.g., anapplication or application portion) as a hardware module that operatesto perform certain operations as described herein.

In some embodiments, a hardware module may be implemented mechanically,electronically, or any suitable combination thereof. For example, ahardware module may include dedicated circuitry or logic that ispermanently configured to perform certain operations. For example, ahardware module may be a special-purpose processor, such as a fieldprogrammable gate array (FPGA) or an ASIC. A hardware module may alsoinclude programmable logic or circuitry that is temporarily configuredby software to perform certain operations. For example, a hardwaremodule may include software encompassed within a general-purposeprocessor 702 or other programmable processor 702. It will beappreciated that the decision to implement a hardware modulemechanically, in dedicated and permanently configured circuitry, or intemporarily configured circuitry (e.g., configured by software) may bedriven by cost and time considerations.

Hardware modules can provide information to, and receive informationfrom, other hardware modules. Accordingly, the described hardwaremodules may be regarded as being communicatively coupled. Where multiplehardware modules exist contemporaneously, communications may be achievedthrough signal transmission (e.g., over appropriate circuits and buses708) between or among two or more of the hardware modules. Inembodiments in which multiple hardware modules are configured orinstantiated at different times, communications between such hardwaremodules may be achieved, for example, through the storage and retrievalof information in memory structures to which the multiple hardwaremodules have access. For example, one hardware module may perform anoperation and store the output of that operation in a memory device towhich it is communicatively coupled. A further hardware module may then,at a later time, access the memory device to retrieve and process thestored output. Hardware modules may also initiate communications withinput or output devices, and can operate on a resource (e.g., acollection of information).

The various operations of example methods described herein may beperformed, at least partially, by one or more processors 702 that aretemporarily configured (e.g., by software) or permanently configured toperform the relevant operations. Whether temporarily or permanentlyconfigured, such processors 702 may constitute processor-implementedmodules that operate to perform one or more operations or functionsdescribed herein. As used herein, “processor-implemented module” refersto a hardware module implemented using one or more processors 702.

Similarly, the methods described herein may be at least partiallyprocessor-implemented, a processor 702 being an example of hardware. Forexample, at least some of the operations of a method may be performed byone or more processors 702 or processor-implemented modules. As usedherein, “processor-implemented module” refers to a hardware module inwhich the hardware includes one or more processors 702. Moreover, theone or more processors 702 may also operate to support performance ofthe relevant operations in a “cloud computing” environment or as a“software as a service” (SaaS). For example, at least some of theoperations may be performed by a group of computers (as examples ofmachines 700 including processors 702), with these operations beingaccessible via a network 726 (e.g., the Internet) and via one or moreappropriate interfaces (e.g., an application program interface or“API”).

The performance of certain operations may be distributed among the oneor more processors 702, not only residing within a single machine 700,but deployed across a number of machines 700. In some exampleembodiments, the one or more processors 702 or processor-implementedmodules may be located in a single geographic location (e.g., within ahome environment, an office environment, or a server farm). In otherexample embodiments, the one or more processors 702 orprocessor-implemented modules may be distributed across a number ofgeographic locations.

Unless specifically stated otherwise, discussions herein using wordssuch as “processing,” “computing,” “calculating,” “determining,”“presenting,” “displaying,” or the like may refer to actions orprocesses of a knowledge analysis system 230 (e.g., a on a computingdevice or external server such as server machine 110 depicted in FIG. 1or as part of a system of interconnected systems and devices as depictedin FIG. 2) that manipulates or transforms data represented as physical(e.g., electronic, magnetic, or optical) quantities within one or morememories (e.g., volatile memory, non-volatile memory, or any suitablecombination thereof), registers, or other machine components thatreceive, store, transmit, or display information. Furthermore, unlessspecifically stated otherwise, the terms “a” or “an” are herein used, asis common in patent documents, to include one or more than one instance.Finally, as used herein, the conjunction “or” refers to a non-exclusive“or,” unless specifically stated otherwise.

The present disclosure is illustrative and not limiting. Furthermodifications will be apparent to one skilled in the art in light ofthis disclosure and are intended to fall within the scope of theappended claims.

What is claimed is:
 1. A method for relaying contextually relevantactions, the method comprising: accessing a communication between afirst user and a second user; identifying at least one entity within thecommunication; predicting at least one contextually relevant actionassociated with the at least one entity, wherein predicting the at leastone contextually relevant action comprises: identifying at least onerelevant action associated with the identified entity; accessing adatabase of historical trends and activities of actions taken withrespect to the identified entity; identifying amplifying words withinthe communication; computing a correlation between the identifiedrelevant action, the historical trends and activities, and identifiedamplifying words; and determining an hierarchy of contextually relevantactions as a function of the computed correlation; selecting at leastone contextually relevant action from the hierarchy of contextuallyrelevant actions; and delivering the selected contextually relevantaction to at least the second user.
 2. The method of claim 1, whereinthe communication accessed between first user and second user is avisual communication.
 3. The method of claim 2, further comprisingoperably coupling the identified entity with the selected contextuallyrelevant action.
 4. The method of claim 3, wherein operably coupling theidentified entity with the selected contextually relevant actioncomprises replacing the entity within the visual communication with theselected contextually relevant action.
 5. The method of claim 1, whereinthe communication accessed between first user and second user is anaudio communication.
 6. The method of claim 5, wherein delivering theselected contextually relevant action to at least the second user is bydelivering a visual cue to at least the second user.
 7. The method ofclaim 6, wherein the visual cue is a pane display of the identifiedentity and the selected contextually relevant action.
 8. The method ofclaim 1, wherein selecting at least one contextually relevant actionfurther comprises: presenting the first user with at least onecontextually relevant action with the highest computed correlation; andreceiving a confirmation from the first user to select the presentedcontextually relevant action.
 9. The method of claim 1, furthercomprising delivering a secondary action with respect to a previouslyexecuted contextually relevant action.
 10. A non-transitory computerreadable medium comprising instructions that, when executed by aprocessor, cause the processor to perform operations comprising:accessing a communication between a first user and a second user;identifying at least one entity within the communication; predicting atleast one contextually relevant action associated with the at least oneentity, wherein predicting the at least one contextually relevant actioncomprises: identifying at least one relevant action associated with theidentified entity; accessing a database of historical trends andactivities of actions taken with respect to the identified entity;identifying amplifying words within the communication; computing acorrelation between the identified relevant action, the historicaltrends and activities, and identified amplifying words; and determiningan hierarchy of contextually relevant actions as a function of thecomputed correlation; selecting at least one contextually relevantaction from the hierarchy of contextually relevant actions; anddelivering the selected contextually relevant action to at least thesecond user.
 11. The computer readable medium of claim 10, wherein theoperations to access a communication between a first user and seconduser comprise accessing a visual communication.
 12. The computerreadable medium of claim 11, wherein the operations further compriseoperably coupling the identified entity with the selected contextuallyrelevant action.
 13. The computer readable medium of claim 12, whereinthe operations to operably couple the identified entity with theselected contextually relevant action comprise replacing the entitywithin the visual communication with the selected contextually relevantaction.
 14. The computer readable medium of claim 10, wherein theoperations to access a communication between a first user and seconduser comprise accessing an audio communication.
 15. The computerreadable medium of claim 14, wherein the operations to deliver theselected contextually relevant action to at least the second usercomprise delivering a visual cue to at least the second user.
 16. Thecomputer readable medium of claim 15, wherein the operations to delivera visual cue comprise creating a pane display of the identified entityand the selected contextually relevant action.
 17. The computer readablemedium of claim 10, wherein the operations to select at least onecontextually relevant action further comprises operations comprising:presenting the first user with at least one contextually relevant actionwith the highest computed correlation; and receiving a confirmation fromthe first user to select the presented contextually relevant action. 18.The computer readable medium of claim 17, wherein the operations furthercomprise delivering a secondary action with respect to a previouslyexecuted contextually relevant action.
 19. A system comprising: a dataprocessor; at least one computing device configured to createcommunications; a knowledge analysis system operably coupled to the dataprocessor and at least one computing device, the knowledge analysissystem configured to execute instructions received from the dataprocessor to: access a communication between a first user and a seconduser; identify at least one entity within the communication; predict atleast one contextually relevant action associated with the at least oneentity, wherein the prediction of the at least one contextually relevantaction comprises: identifying at least one relevant action associatedwith the identified entity; accessing a database of historical trendsand activities of actions taken with respect to the identified entity;identifying amplifying words within the communication; computing acorrelation between the identified relevant action, the historicaltrends and activities, and identified amplifying words; and determiningan hierarchy of contextually relevant actions as a function of thecomputed correlation; selecting at least one contextually relevantaction from the hierarchy of contextually relevant actions; and deliverthe selected contextually relevant action to at least the second user.